package com.snailhd.cloud.account.spi;


import com.snailhd.cloud.account.entity.LoginDTO;
import com.snailhd.cloud.account.entity.LoginResultVO;
import com.snailhd.common.entity.IResult;

public interface TokenService {

    /**
     * @Author hd 
     * @Description 登录
     * @Date 2019-06-08 23:34 
     * @Param [loginDTO]
     * @return com.snailhd.cloud.common.entity.IResult<com.snailhd.cloud.common.entity.Account>
     **/
    IResult<LoginResultVO> login(LoginDTO loginDTO);

    /**
     * @Author hd 
     * @Description 登出
     * @Date 2019-06-08 23:34 
     * @Param [userId]
     * @return com.snailhd.cloud.common.entity.IResult
     **/
    IResult logout(String userId);

    
    /**
     * @Author hd 
     * @Description 验证
     * @Date 2019-06-08 23:35 
     * @Param [token]
     * @return com.snailhd.cloud.common.entity.IResult<com.snailhd.cloud.common.entity.Account>
     **/
    IResult verifyToken(String token) throws Exception ;

}
